{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import pandas as pd \n",
    "plt.rcParams['font.sans-serif'] = ['SimHei'] #指定默认字体 SimHei为黑体\n",
    "plt.rcParams['axes.unicode_minus'] = False #用来正常显示负\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ID</th>\n",
       "      <th>Name</th>\n",
       "      <th>Sex</th>\n",
       "      <th>Age</th>\n",
       "      <th>Height</th>\n",
       "      <th>Weight</th>\n",
       "      <th>Team</th>\n",
       "      <th>NOC</th>\n",
       "      <th>Games</th>\n",
       "      <th>Year</th>\n",
       "      <th>Season</th>\n",
       "      <th>City</th>\n",
       "      <th>Sport</th>\n",
       "      <th>Event</th>\n",
       "      <th>Medal</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>A Dijiang</td>\n",
       "      <td>M</td>\n",
       "      <td>24.0</td>\n",
       "      <td>180.0</td>\n",
       "      <td>80.0</td>\n",
       "      <td>China</td>\n",
       "      <td>CHN</td>\n",
       "      <td>1992 Summer</td>\n",
       "      <td>1992</td>\n",
       "      <td>Summer</td>\n",
       "      <td>Barcelona</td>\n",
       "      <td>Basketball</td>\n",
       "      <td>Basketball Men's Basketball</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>A Lamusi</td>\n",
       "      <td>M</td>\n",
       "      <td>23.0</td>\n",
       "      <td>170.0</td>\n",
       "      <td>60.0</td>\n",
       "      <td>China</td>\n",
       "      <td>CHN</td>\n",
       "      <td>2012 Summer</td>\n",
       "      <td>2012</td>\n",
       "      <td>Summer</td>\n",
       "      <td>London</td>\n",
       "      <td>Judo</td>\n",
       "      <td>Judo Men's Extra-Lightweight</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>Gunnar Nielsen Aaby</td>\n",
       "      <td>M</td>\n",
       "      <td>24.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>Denmark</td>\n",
       "      <td>DEN</td>\n",
       "      <td>1920 Summer</td>\n",
       "      <td>1920</td>\n",
       "      <td>Summer</td>\n",
       "      <td>Antwerpen</td>\n",
       "      <td>Football</td>\n",
       "      <td>Football Men's Football</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>Edgar Lindenau Aabye</td>\n",
       "      <td>M</td>\n",
       "      <td>34.0</td>\n",
       "      <td>NaN</td>\n",
       "      <td>NaN</td>\n",
       "      <td>Denmark/Sweden</td>\n",
       "      <td>DEN</td>\n",
       "      <td>1900 Summer</td>\n",
       "      <td>1900</td>\n",
       "      <td>Summer</td>\n",
       "      <td>Paris</td>\n",
       "      <td>Tug-Of-War</td>\n",
       "      <td>Tug-Of-War Men's Tug-Of-War</td>\n",
       "      <td>Gold</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>Christine Jacoba Aaftink</td>\n",
       "      <td>F</td>\n",
       "      <td>21.0</td>\n",
       "      <td>185.0</td>\n",
       "      <td>82.0</td>\n",
       "      <td>Netherlands</td>\n",
       "      <td>NED</td>\n",
       "      <td>1988 Winter</td>\n",
       "      <td>1988</td>\n",
       "      <td>Winter</td>\n",
       "      <td>Calgary</td>\n",
       "      <td>Speed Skating</td>\n",
       "      <td>Speed Skating Women's 500 metres</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   ID                      Name Sex   Age  Height  Weight            Team  \\\n",
       "0   1                 A Dijiang   M  24.0   180.0    80.0           China   \n",
       "1   2                  A Lamusi   M  23.0   170.0    60.0           China   \n",
       "2   3       Gunnar Nielsen Aaby   M  24.0     NaN     NaN         Denmark   \n",
       "3   4      Edgar Lindenau Aabye   M  34.0     NaN     NaN  Denmark/Sweden   \n",
       "4   5  Christine Jacoba Aaftink   F  21.0   185.0    82.0     Netherlands   \n",
       "\n",
       "   NOC        Games  Year  Season       City          Sport  \\\n",
       "0  CHN  1992 Summer  1992  Summer  Barcelona     Basketball   \n",
       "1  CHN  2012 Summer  2012  Summer     London           Judo   \n",
       "2  DEN  1920 Summer  1920  Summer  Antwerpen       Football   \n",
       "3  DEN  1900 Summer  1900  Summer      Paris     Tug-Of-War   \n",
       "4  NED  1988 Winter  1988  Winter    Calgary  Speed Skating   \n",
       "\n",
       "                              Event Medal  \n",
       "0       Basketball Men's Basketball   NaN  \n",
       "1      Judo Men's Extra-Lightweight   NaN  \n",
       "2           Football Men's Football   NaN  \n",
       "3       Tug-Of-War Men's Tug-Of-War  Gold  \n",
       "4  Speed Skating Women's 500 metres   NaN  "
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "raw_data = pd.read_csv(r'C:\\Users\\HK\\Desktop\\抖音\\athlete_events.csv')\n",
    "raw_data.head(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "271116"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rows=raw_data.copy()\n",
    "rows=rows[['ID','Sex','Age','Height','Weight','Team','Year']]\n",
    "rows.shape[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 136,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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e/9yG+83GGjwLYZ9jDGnEg5jnQJM8GEOQCE/x4mElf0E4I5cz09mgZ8FnOXDuY4qjjFmJ8K+mJHe+3nJUNcc1p0hfyvhMNgjc/0sxpi9gJd8MvNbpL1UFLKOZOJZD9/6RLDGx/UHlvjck8xEJCNUFCIikpeOehIRkbxUFCIikpeKQkRE8lJRiIhIXioKERHJq8MzsydNmtS1W7dul9bW1o4yLS5OUIkaGhqWrVix4rpx48bdFzuLiEiadPjw2ClTpvxm0003tRtssEFbF6OvCA0NDWbevHl177333l1jx449P3YeEZG06PDQU21t7ai0lARATU2NHzRo0Mq6urrdYmcREUmTDhdFGoabcklrbhGRWIp69ljjXElOS+ytnVSK1xURkbZl5jTjp5566uA77rij76BBg9ZcR+Gpp56qr6vLzI8oIhJFptai3/jGN+aff/7561yxS0REOk7zKEREJK9MFcX48eP777TTTiN32mmnkdOnT+8SO4+ISBZo6ElERPLK1BaFiIgUn4pCRETyKurQU8z5DpdffnlB11MWEZH20RaFiIjkpaIQEZG8VBQiIpKXikJERPJSUYiISF5FPerJmdKcPdZ6nT1WRCQWbVGIiEhemSmKww47bOjw4cPHANxwww19jDE71NfXd42dS0Qk7TJTFADTp0/vtnjx4ppJkyb1iJ1FRCQrMlUUW2655bIJEyZ0f/HFF3tstdVWy2LnERHJgkwVxQ477LB04sSJPZcuXVrbu3fv1bHziIhkQaaKYscdd1x611139R02bNjy2FlERLIiU0UxYsSI5TNmzOi24447Lo2dRUQkK4o6j6IS5jtsu+22S3fZZZel9957b5/YWUREssB47zv0xPr6+n+OHDkydSvj+vr690eOHLl37BwiImmRqaEnEREpvqorCt/RTSgRkSrV4aJoaGhY1tDQYIoZptRWrVpV09DQsDh2DhGRNOnwzuwVK1ZcN2/evAsHDRq0spiBSmXVqlU1b7755srly5efGTuLxGWcqwPWB3oly/pAF8AnS0OOryuARcAib+2SCLFFounwzmyAyZMnn11XV7ebMaaityy8976hoWHx8uXLz9x+++1fjZ1Hiss4Z4D+wOBkGdLk+8alH2uLYb1OvuVqYDFJcQAfAO8BM4F3mixvA3O8tZr8KanWqaIQKSdnXHdgdP0Ihh93LeOA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\n",
      "text/plain": [
       "<Figure size 500x500 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#男女比例，饼图\n",
    "f_w = rows.groupby('Sex').count()['ID'].to_dict()\n",
    "\n",
    "election_data = f_w\n",
    "candidate = [key for key in election_data]\n",
    "votes = [value for value in election_data.values()]\n",
    "plt.figure(figsize=(10, 10), dpi=50)\n",
    "plt.pie(votes, labels=candidate, autopct=\"%1.2f%%\", colors=['c', 'm', 'y'],\n",
    "        textprops={'fontsize': 24}, labeldistance=1.05)\n",
    "plt.legend(fontsize=16)\n",
    "plt.title(\"男女参赛占比情况\", fontsize=24)\n",
    "plt.show()\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 143,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 年龄情况,柱状图\n",
    "\n",
    "age = rows.groupby('Age').count()['ID'].to_dict()\n",
    "\n",
    "x = np.array(list(age.keys()))\n",
    "y = np.array(list(age.values()))\n",
    "plt.scatter(x, y,s=50,c='red',alpha=0.5)      # s 点的大小  c 点的颜色 alpha 透明度\n",
    "plt.xlabel(\"参赛者年龄\")\n",
    "plt.ylabel(\"参赛人数\")\n",
    "plt.title(\"参赛者年龄分布\")\n",
    "plt.show()\n",
    "\n",
    "    "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 141,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 320x320 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "#男女比例，饼图\n",
    "#身高分组\n",
    "def stage_height(h):\n",
    "    if h in range(120,150):\n",
    "        return '120-150'\n",
    "    elif h in range(150,160):\n",
    "        return '150-160'\n",
    "    elif h in range(160,170):\n",
    "        return '160-170'\n",
    "    elif h in range(170,180):\n",
    "        return '170-180'\n",
    "    else:\n",
    "        return '180+'\n",
    "rows['height'] = rows['Height'].apply(lambda x:stage_height(x))\n",
    "height = rows.groupby('height').count()['ID'].to_dict()\n",
    "height\n",
    "\n",
    "# 构建数据\n",
    "x = list(height.keys())\n",
    "y = list(height.values())\n",
    "\n",
    "\n",
    "# 绘制柱状图\n",
    "plt.figure(figsize=(4, 4),dpi=80)\n",
    "plt.bar(x, y, align=\"center\", color='b',alpha=0.3)\n",
    "\n",
    "plt.xlabel(\"身高(cm)\")\n",
    "plt.ylabel(\"参赛人数\")\n",
    "plt.title(\"参赛身高占比情况\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 149,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 320x320 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 随着时间参赛人数变化,折线图\n",
    "year = rows.groupby('Year').count()['ID'].to_dict()\n",
    "x = list(year.keys())\n",
    "y = list(year.values())\n",
    "# 绘制柱状图\n",
    "plt.figure(figsize=(4, 4),dpi=80)\n",
    "plt.plot(x, y, color='r',alpha=0.3)\n",
    "\n",
    "plt.xlabel(\"年份\")\n",
    "plt.ylabel(\"参赛人数\")\n",
    "plt.title(\"年份参赛人数变化情况\")\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "{'United States': 17847,\n",
       " 'France': 11988,\n",
       " 'Great Britain': 11404,\n",
       " 'Italy': 10260,\n",
       " 'Germany': 9326,\n",
       " 'Canada': 9279,\n",
       " 'Japan': 8289,\n",
       " 'Sweden': 8052,\n",
       " 'Australia': 7513,\n",
       " 'Hungary': 6547,\n",
       " 'Poland': 6143,\n",
       " 'Switzerland': 5844,\n",
       " 'Netherlands': 5718,\n",
       " 'Soviet Union': 5535,\n",
       " 'Finland': 5379,\n",
       " 'Spain': 5224,\n",
       " 'China': 4975,\n",
       " 'Russia': 4922,\n",
       " 'Austria': 4866,\n",
       " 'Norway': 4708,\n",
       " 'Czechoslovakia': 4352,\n",
       " 'South Korea': 4344,\n",
       " 'Romania': 4303,\n",
       " 'Brazil': 3772,\n",
       " 'Belgium': 3687,\n",
       " 'Bulgaria': 3518,\n",
       " 'Denmark': 3424,\n",
       " 'Argentina': 3199,\n",
       " 'West Germany': 3199,\n",
       " 'Greece': 2976,\n",
       " 'Mexico': 2857,\n",
       " 'Yugoslavia': 2558,\n",
       " 'East Germany': 2543,\n",
       " 'Ukraine': 2511,\n",
       " 'Cuba': 2464,\n",
       " 'New Zealand': 2328,\n",
       " 'Czech Republic': 1802,\n",
       " 'Belarus': 1783,\n",
       " 'South Africa': 1690,\n",
       " 'Egypt': 1622,\n",
       " 'Portugal': 1472,\n",
       " 'Kazakhstan': 1429,\n",
       " 'India': 1400,\n",
       " 'Turkey': 1353,\n",
       " 'Ireland': 1309,\n",
       " 'Slovenia': 1107,\n",
       " 'Chinese Taipei': 1077,\n",
       " 'Colombia': 1068,\n",
       " 'Slovakia': 1041,\n",
       " 'Luxembourg': 992,\n",
       " 'Chile': 924,\n",
       " 'Puerto Rico': 923,\n",
       " 'Venezuela': 921,\n",
       " 'Croatia': 876,\n",
       " 'Estonia': 870,\n",
       " 'Latvia': 867,\n",
       " 'Nigeria': 862,\n",
       " 'Jamaica': 841,\n",
       " 'Unified Team': 832,\n",
       " 'North Korea': 795,\n",
       " 'Iran': 789,\n",
       " 'Kenya': 772,\n",
       " 'Thailand': 732,\n",
       " 'Philippines': 688,\n",
       " 'Morocco': 682,\n",
       " 'Hong Kong': 670,\n",
       " 'Israel': 657,\n",
       " 'Lithuania': 654,\n",
       " 'Iceland': 627,\n",
       " 'Uruguay': 570,\n",
       " 'Pakistan': 562,\n",
       " 'Tunisia': 561,\n",
       " 'Algeria': 551,\n",
       " 'Mongolia': 550,\n",
       " 'Peru': 532,\n",
       " 'Malaysia': 510,\n",
       " 'Uzbekistan': 491,\n",
       " 'Guatemala': 425,\n",
       " 'Senegal': 393,\n",
       " 'Serbia': 388,\n",
       " 'Ethiopia': 378,\n",
       " 'Trinidad and Tobago': 373,\n",
       " 'Liechtenstein': 369,\n",
       " 'Ghana': 359,\n",
       " 'Indonesia': 355,\n",
       " 'Bahamas': 348,\n",
       " 'Singapore': 338,\n",
       " 'Lebanon': 327,\n",
       " 'Serbia and Montenegro': 321,\n",
       " 'Cameroon': 312,\n",
       " 'Zimbabwe': 309,\n",
       " 'Georgia': 286,\n",
       " 'Kuwait': 284,\n",
       " 'Azerbaijan': 283,\n",
       " 'Dominican Republic': 277,\n",
       " 'Ecuador': 277,\n",
       " 'United States-1': 277,\n",
       " 'United States-2': 277,\n",
       " 'United States Virgin Islands': 270,\n",
       " 'Angola': 267}"
      ]
     },
     "execution_count": 98,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#国家分布\n",
    "from collections import Counter\n",
    "country = rows.groupby('Team').count()['ID'].to_dict()\n",
    "country_dict = dict(Counter(country).most_common(100))\n",
    "country_dict"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
